#pragma once
#include "Define.h"
#include "Singleton.h"
#include <iostream>
#include <fstream>
#include <vector>

namespace Next
{
	namespace Log
	{
		using namespace std;
		using namespace Defines;
		using namespace Patterns;

		class CLog : public TSingleton<CLog>
		{
			friend class TSingleton<CLog>;
		private:
			vector<stLine>* vecLines;
			ofstream logFile;
			int LogMYear, LogMonth, LogMDay;
			unsigned int uLineCount;

			void AddLine(LogColor color, string text);
			void AddLineToFile(string text);
				
		public:
			void Add(LogColor color, char* text, ...);
			void ChangeDate();
			void LogPaint(HWND hWnd);

		protected:
			CLog(void);
			~CLog(void);
		};
	}
}

